Characterizations of Formal and Agile Methods

Agile Methods

Formal Methods

Validation

Verification

Pleasantness

Correctness

Refactoring

Refinement

Concrete

Abstract

Particular

General

Tests

Roofs

Design evolve with code

upfront design

Cowboy coding

Analysis paralysis

Team

Programmer

Beck [9] [10]

Dijkstra [13] [14]